#include <string>
#include "task.hxx"

class FileLog;

class User;
class TaskFactory
{
public:
	//static TaskFactory* GetInstance(void);

	static Task* CreateTask(int type, const User* user, int id, const std::string& info, Task::TaskStatus status = Task::LOADED, FileLog* filelog=0);

private:
	// Constructors forbidden.
	static TaskFactory* instance;
	TaskFactory() {}
	TaskFactory(const TaskFactory&){}
	TaskFactory operator =(const TaskFactory&){}
};